CDMA (Code Division Multiple Access) signals experience interference in dispersive channels. The interference is composed of self-interference (i.e. intersymbol interference), multiple access interference (i.e. interference due to non-zero code cross correlation), and other cell (i.e. downlink) or other user (i.e. uplink) interference. The interference affects two inter-related aspects of receiver performance. The first effect of interference is that some form of equalization is required in order to achieve good throughput for high data rate services. For example, to meet the enhanced throughput requirements set by 3GPP for type 2 (i.e. single antenna) and type 3 (i.e. dual antenna) receivers, a linear equalizer is needed. Second, channel estimates obtained via dedicated pilot symbols or a pilot channel are degraded. Lower-quality channel estimates affect the ability of the receiver to accurately equalize and/or estimate signal quality via SINR (signal to interference plus noise ratio). Various conventional approaches are available for addressing interference in the context of a CDMA signal. Each of these approaches account for interference during channel estimation and equalization.
There are typically two types of channel coefficients: medium and net. Medium channel coefficients refer to the complex values (magnitude and phase) associated with the radio channel. Net channel coefficients refer to the complex values associated with the composite channel response that includes the transmit filter, the medium channel coefficients, and the receive filter. Medium coefficients are denoted herein by the vector g which is an L×1 vector of complex values associated with L radio channel paths. Net channel coefficients are denoted herein by the vector h which is an M×1 vector of complex values (M≧L) associated with the M receiver fingers (i.e. path delays).
One conventional approach which accounts for interference during channel estimation and equalization is employed for WCDMA (Wideband CDMA) downlink signals which contain a strong pilot channel. This approach employs a relatively simple net channel estimator based on the symbols for the nth slot as given by:
                                          h            ^                    ⁡                      (            n            )                          =                              1                          N              p                                ⁢                                    ∑                              k                =                0                                                              N                  p                                -                1                                      ⁢                                          x                ⁡                                  (                                      n                    ,                    k                                    )                                            ⁢                                                s                  *                                ⁡                                  (                                      n                    ,                    k                                    )                                                                                        (        1        )            where x(n,k) is a vector of despread pilot symbols corresponding to receiver fingers for the kth symbol during the nth slot, s(n,k) is the kth symbol during the nth slot, and Np is the number of pilot symbols per slot. This simple net channel estimator can be extended to reduce noise via a relatively simple filtering operation given by:{tilde over (h)}(n)=λ{tilde over (h)}(n−1)+(1−λ)ĥ(n)  (2)However, there tends to be too few pilot symbols per slot available with this conventional technique for suppressing interference and noise appreciably. If the averaging indicated by equation (2) is used, noise and interference are suppressed somewhat, but the method is then essentially useful only for low speed scenarios. Generally, this method is incapable of producing truly high-quality channel estimates.
Another conventional approach is an MMSE (Minimum Mean Square Error) estimator which relies on a model for the channel and the relationship between medium and net channel coefficients. Medium channel coefficients can be converted to net coefficients as given by:h=Bg  (3)where B is an M×L conversion matrix and the (i,j) element of B is given by:bi,j=RTX/RX(di−τj).  (4)Here, RTX/RX(Δ) is the convolution of the transmit and receive filters evaluated at Δ, di is the delay of the ith receiver finger, and τj is the jth path delay. The conversion from net to medium coefficients is given by:g=(BHB)−1BHh  (5)The MMSE channel estimator can be shown to be:gMMSE=RgBH(BRgBH+Ru)−1ĥ  (6)In equation (6), Rg is a medium coefficient correlation matrix (i.e. E{ggH}), Ru is an impairment covariance matrix, and ĥ is the net channel estimate given in equation (1). MMSE estimators tend to be highly dependent on accurate knowledge of the channel delays. When such information is available, MMSE estimators perform relatively well. However, even small errors in channel delay estimation significantly reduce the effectiveness of MMSE estimators.
Still another conventional approach is an ML (Maximum Likelihood) estimator which treats the channel coefficients as unknown deterministic parameters. The channel coefficients can be estimated directly by solving a problem of the form ∥Ax−b∥22. The solution to this problem can be obtained by the least squares method. To form a least squares solution, the following matrix and vector from the Np pilot symbol intervals in the current slot is provided:
                              A          =                      [                                                                                Bs                    ⁡                                          (                                              n                        ,                        0                                            )                                                                                                                                        Bs                    ⁡                                          (                                              n                        ,                        1                                            )                                                                                                                    ⋮                                                                                                  Bs                    ⁡                                          (                                              n                        ,                                                                              N                            p                                                    -                          1                                                                    )                                                                                            ]                          ⁢                                  ⁢                  b          =                      [                                                                                x                    ⁡                                          (                                              n                        ,                        0                                            )                                                                                                                                        x                    ⁡                                          (                                              n                        ,                        1                                            )                                                                                                                    ⋮                                                                                                  x                    ⁡                                          (                                              n                        ,                                                                              N                            p                                                    -                          1                                                                    )                                                                                            ]                                              (        7        )            A whitening transformation is then applied to A and b. The whitening transformation is typically the inverse of the Cholesky factor of the impairment covariance matrix Ru. The impairment covariance matrix is Cholesky factorized as given by:GGH=chol(Ru)  (8)and the inverse of either the lower triangular or upper triangular factor computed. The inverse Cholesky factor is applied to A and b to give:Ã=G−1A {tilde over (b)}=G−1b  (9)The transformed matrices can be used to compute relatively high quality medium channel estimates as given by:gwhiten=(ÃHÃ)−1ÃH{tilde over (b)}  (10)and the corresponding net channel estimates from:hwhiten=Bgwhiten  (11)Like MMSE estimators, ML estimators tend to be highly dependent on accurate knowledge of the channel delays, and thus also suffer from even small errors in channel delay estimation.
Other conventional approaches utilize linear equalization for suppressing interference in WCDMA receivers. Linear equalization is typically performed at either the chip level or symbol level. Symbol level equalization follows the traditional Rake architecture where received chip-level data is despread at multiple delays, and the multiple images combined. Chip level equalization reverses the order of these operations. That is, the received chip data is first combined using a linear filter and then despread at a single delay. Both approaches tend to be equivalent from a performance perspective.
The G-Rake receiver is representative of a conventional symbol-level equalization approach. G-Rake combining weights are used for coherent combining as well as interference suppression. The combining weights are given by:w=Ru−1h  (12)where Ru is the impairment covariance matrix and h is a vector of net channel coefficients. G-Rake receivers can be implemented parametrically or non-parametrically. Nonparametric G-Rake methods are blind, and estimate Ru directly from observed data. Parametric G-Rake methods assume an underlying model, and compute Ru from model parameters.
With chip-level equalization, the received WCDMA signal at the chip level is given by:r=Hc+v  (13)Here, r is a N+L−1 block of received chips, H is the (N+L−1)×N) sized Toeplitz convolution matrix whose columns are time shifted versions of the channel impulse response h with delay spread L (chip or sub-chip spaced version of the net channel coefficients), v represents white Gaussian noise due to neighboring base stations and thermal noise, and c is the transmitted chip sequence. A chip equalizer filter f which suppresses interference is given by:f=A−1b  (14)where
A=E{XHX}
b=E{XHCpHp}
X=CpHR
Cp=N×S sized pilot scrambling and spreading matrix
p=pilot chip sequence
It is generally assumed that there are S pilot symbols per data block and the columns of matrix R are time-shifted versions of the chip level received signal r.
WCDMA linear equalization can be thought of as applying a filter to undo the effect of the channel-induced interference. Some conventional approaches partition the filter into two or more sub-filters, an approach that can be thought of as split equalization. For example, a nonlinear equalizer may be required for certain applications such as EDGE (Enhanced Data rates for GSM Evolution) to meet particular performance targets. However, the complexity of a nonlinear equalizer is a function of the number of channel taps. Therefore, channel shortening (channel compacting) pre-filters have been designed to minimize the number of channel taps. Conventional pre-filters typically do not color the noise and interference, but simply concentrate the channel energy into a few taps. The pre-filter is followed by a DFSE (decision feedback sequence estimation) nonlinear equalizer. The combination of the pre-filter and DFSE equalizer performs the overall equalization task for an EDGE receiver.
Conventional split equalizers (pre-filter+DFSE) do not readily extend to WCDMA. It is typically assumed that the receiver has good information about the channel delays. For example, the receiver can hypothesize that there are either N or M symbol-spaced channel taps (N≠M). A pre-filter is then provided for each hypothesized number of channel taps, and the pre-filter that gives the best performance is utilized. However, a WCDMA receiver does not have such accurate knowledge of channel tap locations, thus making implementation difficult.
Linear equalizers for CDMA systems have generally been concentrated into one filter and implemented in the time domain. This limits the effective span of the equalizer and can inhibit the ability of the equalizer to handle dispersive scenarios. To obtain exact desired filter responses with time domain filtering, the required filter lengths often become impractically long, and thus impose a significant computational load. In practice, the filter response length is typically limited in the actual implementation. Doing so lowers the filtering accuracy and causes unwanted noise enhancement, as the first filtering stage causes uncontrolled frequency response variations in the signal passband.